﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;

namespace AgendaManager.Service
{
    public class ObraCañoDAO : DAOBase
    {
        public static bool NuevasObrasCaños(List<ObraCaño> obrasCaños)
        {
            try
            {
                foreach (ObraCaño obraCaño in obrasCaños)
                {
                    obraCaño.Id = GetNextId(obraCaño);

                    DAOBase.CreateEntity(obraCaño);
                }

                return true;
            }
            catch (Exception)
            {
                throw;
            }
        }

        internal static List<ObraCaño> RetrieveEntitiesWhere(object dto, string where)
        {
            List<ObraCaño> dtos = new List<ObraCaño>();

            DataTable dt = GetDataTableWhere(dto, where);

            if (dt.Rows.Count > 0)
                dtos = LlenarObraCaño(dto, dt);

            return dtos;
        }

        private static List<ObraCaño> LlenarObraCaño(object dto, DataTable dt)
        {
            List<ObraCaño> dtos = new List<ObraCaño>();

            foreach (DataRow dr in dt.Rows)
            {
                ObraCaño aux = new ObraCaño();
                PoblarObjetoDesdeDataRow(aux, dr);

                dtos.Add(aux);
            }

            return dtos;
        }

        internal static bool Update(object dto)
        {
            try
            {
                return DAOBase.UpdateEntity(dto);
            }
            catch (Exception)
            {
                throw;
            }
        }
    }
}